<!-- HTML header for doxygen 1.8.18-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Ipopt: Ipopt::NLPBoundsRemover Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="stylesheet.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 40px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Ipopt Documentation
   &#160;<!--span id="projectnumber">3.14.12</span-->
   </div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classIpopt_1_1NLPBoundsRemover.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classIpopt_1_1NLPBoundsRemover-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Ipopt::NLPBoundsRemover Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>This is an adapter for an <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a> that converts variable bound constraints to inequality constraints.  
 <a href="classIpopt_1_1NLPBoundsRemover.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for Ipopt::NLPBoundsRemover:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classIpopt_1_1NLPBoundsRemover__inherit__graph.png" border="0" usemap="#Ipopt_1_1NLPBoundsRemover_inherit__map" alt="Inheritance graph"/></div>
<map name="Ipopt_1_1NLPBoundsRemover_inherit__map" id="Ipopt_1_1NLPBoundsRemover_inherit__map">
<area shape="rect" title="This is an adapter for an NLP that converts variable bound constraints to inequality constraints." alt="" coords="5,155,200,181"/>
<area shape="rect" href="classIpopt_1_1NLP.html" title="Traditional NLP." alt="" coords="59,80,147,107"/>
<area shape="rect" href="classIpopt_1_1ReferencedObject.html" title="Storing the reference count of all the smart pointers that currently reference it." alt="" coords="13,5,192,32"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a08966cbde0fbf585f00e3d0a5b8f7ae3"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a08966cbde0fbf585f00e3d0a5b8f7ae3">GetQuasiNewtonApproximationSpaces</a> (<a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;approx_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &gt; &amp;P_approx)</td></tr>
<tr class="memdesc:a08966cbde0fbf585f00e3d0a5b8f7ae3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for obtaining the subspace in which the limited-memory Hessian approximation should be done.  <a href="classIpopt_1_1NLPBoundsRemover.html#a08966cbde0fbf585f00e3d0a5b8f7ae3">More...</a><br /></td></tr>
<tr class="separator:a08966cbde0fbf585f00e3d0a5b8f7ae3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ba0fa7d02a76ad5451b705aacfe6446"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1NLP.html">NLP</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a7ba0fa7d02a76ad5451b705aacfe6446">nlp</a> ()</td></tr>
<tr class="memdesc:a7ba0fa7d02a76ad5451b705aacfe6446"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accessor method to the original <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a>.  <a href="classIpopt_1_1NLPBoundsRemover.html#a7ba0fa7d02a76ad5451b705aacfe6446">More...</a><br /></td></tr>
<tr class="separator:a7ba0fa7d02a76ad5451b705aacfe6446"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Constructors / Destructor</div></td></tr>
<tr class="memitem:a3646ea6cbbe320867a601aa863301fd2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a3646ea6cbbe320867a601aa863301fd2">NLPBoundsRemover</a> (<a class="el" href="classIpopt_1_1NLP.html">NLP</a> &amp;<a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a7ba0fa7d02a76ad5451b705aacfe6446">nlp</a>, bool allow_twosided_inequalities=false)</td></tr>
<tr class="memdesc:a3646ea6cbbe320867a601aa863301fd2"><td class="mdescLeft">&#160;</td><td class="mdescRight">The constructor is given the <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a> of which the bounds are to be replaced by inequality constraints.  <a href="classIpopt_1_1NLPBoundsRemover.html#a3646ea6cbbe320867a601aa863301fd2">More...</a><br /></td></tr>
<tr class="separator:a3646ea6cbbe320867a601aa863301fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff975fe4bc3bc0df167efa8fb5610d18"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#aff975fe4bc3bc0df167efa8fb5610d18">~NLPBoundsRemover</a> ()</td></tr>
<tr class="memdesc:aff975fe4bc3bc0df167efa8fb5610d18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="classIpopt_1_1NLPBoundsRemover.html#aff975fe4bc3bc0df167efa8fb5610d18">More...</a><br /></td></tr>
<tr class="separator:aff975fe4bc3bc0df167efa8fb5610d18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">NLP Initialization.</div></td></tr>
<tr class="memitem:a8af075022694a01745bb1287c08d3a5f"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a8af075022694a01745bb1287c08d3a5f">ProcessOptions</a> (const <a class="el" href="classIpopt_1_1OptionsList.html">OptionsList</a> &amp;options, const std::string &amp;prefix)</td></tr>
<tr class="memdesc:a8af075022694a01745bb1287c08d3a5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Overload if you want the chance to process options or parameters that may be specific to the <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a>.  <a href="classIpopt_1_1NLPBoundsRemover.html#a8af075022694a01745bb1287c08d3a5f">More...</a><br /></td></tr>
<tr class="separator:a8af075022694a01745bb1287c08d3a5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3e1f61783074a309e1332e06bbd14fa"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#ac3e1f61783074a309e1332e06bbd14fa">GetSpaces</a> (<a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;x_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;c_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;d_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;x_l_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;px_l_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;x_u_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;px_u_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;d_l_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;pd_l_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;d_u_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;pd_u_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;Jac_c_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;Jac_d_space, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1SymMatrixSpace.html">SymMatrixSpace</a> &gt; &amp;Hess_lagrangian_space)</td></tr>
<tr class="memdesc:ac3e1f61783074a309e1332e06bbd14fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for creating the derived vector / matrix types.  <a href="classIpopt_1_1NLPBoundsRemover.html#ac3e1f61783074a309e1332e06bbd14fa">More...</a><br /></td></tr>
<tr class="separator:ac3e1f61783074a309e1332e06bbd14fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac39bf6ed1ae8b72e11a64ea7a16f80a9"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#ac39bf6ed1ae8b72e11a64ea7a16f80a9">GetBoundsInformation</a> (const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;Px_L, <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x_L, const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;Px_U, <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x_U, const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;Pd_L, <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;d_L, const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;Pd_U, <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;d_U)</td></tr>
<tr class="memdesc:ac39bf6ed1ae8b72e11a64ea7a16f80a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for obtaining the bounds information.  <a href="classIpopt_1_1NLPBoundsRemover.html#ac39bf6ed1ae8b72e11a64ea7a16f80a9">More...</a><br /></td></tr>
<tr class="separator:ac39bf6ed1ae8b72e11a64ea7a16f80a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef26dbbbe46426d8824a1ec0a15cd30c"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#aef26dbbbe46426d8824a1ec0a15cd30c">GetStartingPoint</a> (<a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; x, bool need_x, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; y_c, bool need_y_c, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; y_d, bool need_y_d, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; z_L, bool need_z_L, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; z_U, bool need_z_U)</td></tr>
<tr class="memdesc:aef26dbbbe46426d8824a1ec0a15cd30c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for obtaining the starting point for all the iterates.  <a href="classIpopt_1_1NLPBoundsRemover.html#aef26dbbbe46426d8824a1ec0a15cd30c">More...</a><br /></td></tr>
<tr class="separator:aef26dbbbe46426d8824a1ec0a15cd30c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd970daf7a1e453e7ed40e7ab1bbdb6c"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#afd970daf7a1e453e7ed40e7ab1bbdb6c">GetWarmStartIterate</a> (<a class="el" href="classIpopt_1_1IteratesVector.html">IteratesVector</a> &amp;warm_start_iterate)</td></tr>
<tr class="memdesc:afd970daf7a1e453e7ed40e7ab1bbdb6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Method for obtaining an entire iterate as a warmstart point.  <a href="classIpopt_1_1NLPBoundsRemover.html#afd970daf7a1e453e7ed40e7ab1bbdb6c">More...</a><br /></td></tr>
<tr class="separator:afd970daf7a1e453e7ed40e7ab1bbdb6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">NLP evaluation routines.</div></td></tr>
<tr class="memitem:a486beaaf38829c5b076ed86e81fb4dc5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a486beaaf38829c5b076ed86e81fb4dc5">Eval_f</a> (const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &amp;f)</td></tr>
<tr class="separator:a486beaaf38829c5b076ed86e81fb4dc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3812bcd2ab07071a349ec22f7c5d6b5b"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a3812bcd2ab07071a349ec22f7c5d6b5b">Eval_grad_f</a> (const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;g_f)</td></tr>
<tr class="separator:a3812bcd2ab07071a349ec22f7c5d6b5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17ce021ed4e18bbf28689133149aec14"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a17ce021ed4e18bbf28689133149aec14">Eval_c</a> (const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;c)</td></tr>
<tr class="separator:a17ce021ed4e18bbf28689133149aec14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a382ca2e4f138bb09e5058725e76be1bb"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a382ca2e4f138bb09e5058725e76be1bb">Eval_jac_c</a> (const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;jac_c)</td></tr>
<tr class="separator:a382ca2e4f138bb09e5058725e76be1bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4a6bc76325ef88805a350d2a3ac758c"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#ab4a6bc76325ef88805a350d2a3ac758c">Eval_d</a> (const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;d)</td></tr>
<tr class="separator:ab4a6bc76325ef88805a350d2a3ac758c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac893de19dca179a6dde68a852e10fc79"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#ac893de19dca179a6dde68a852e10fc79">Eval_jac_d</a> (const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;jac_d)</td></tr>
<tr class="separator:ac893de19dca179a6dde68a852e10fc79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad128e2536a72413480685932d72a5d98"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#ad128e2536a72413480685932d72a5d98">Eval_h</a> (const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> obj_factor, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;yc, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;yd, <a class="el" href="classIpopt_1_1SymMatrix.html">SymMatrix</a> &amp;h)</td></tr>
<tr class="separator:ad128e2536a72413480685932d72a5d98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">NLP solution routines.</div></td></tr>
<tr class="memitem:a250b1fee212af4cff7ca4a32accd9940"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a250b1fee212af4cff7ca4a32accd9940">FinalizeSolution</a> (<a class="el" href="namespaceIpopt.html#a53a5dc5f64f568252ba7bb7385e7f834">SolverReturn</a> status, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;x, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;z_L, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;z_U, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;c, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;d, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;y_c, const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;y_d, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> obj_value, const <a class="el" href="classIpopt_1_1IpoptData.html">IpoptData</a> *ip_data, <a class="el" href="classIpopt_1_1IpoptCalculatedQuantities.html">IpoptCalculatedQuantities</a> *ip_cq)</td></tr>
<tr class="memdesc:a250b1fee212af4cff7ca4a32accd9940"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method is called at the very end of the optimization.  <a href="classIpopt_1_1NLPBoundsRemover.html#a250b1fee212af4cff7ca4a32accd9940">More...</a><br /></td></tr>
<tr class="separator:a250b1fee212af4cff7ca4a32accd9940"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2cca4d97a274734535fad204f64fdc9"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#ac2cca4d97a274734535fad204f64fdc9">IntermediateCallBack</a> (<a class="el" href="IpReturnCodes__inc_8h.html#a5daff61568f9909c518fb61116260387">AlgorithmMode</a> mode, <a class="el" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a> iter, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> obj_value, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> inf_pr, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> inf_du, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> mu, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> d_norm, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> regularization_size, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> alpha_du, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> alpha_pr, <a class="el" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a> ls_trials, const <a class="el" href="classIpopt_1_1IpoptData.html">IpoptData</a> *ip_data, <a class="el" href="classIpopt_1_1IpoptCalculatedQuantities.html">IpoptCalculatedQuantities</a> *ip_cq)</td></tr>
<tr class="memdesc:ac2cca4d97a274734535fad204f64fdc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method is called once per iteration, after the iteration summary output has been printed.  <a href="classIpopt_1_1NLPBoundsRemover.html#ac2cca4d97a274734535fad204f64fdc9">More...</a><br /></td></tr>
<tr class="separator:ac2cca4d97a274734535fad204f64fdc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr class="memitem:af3bfe72fdd3d12fcc905c2e60d2ad576"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#af3bfe72fdd3d12fcc905c2e60d2ad576">GetScalingParameters</a> (const <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; x_space, const <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; c_space, const <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; d_space, <a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &amp;obj_scaling, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; &amp;x_scaling, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; &amp;c_scaling, <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; &amp;d_scaling) const</td></tr>
<tr class="memdesc:af3bfe72fdd3d12fcc905c2e60d2ad576"><td class="mdescLeft">&#160;</td><td class="mdescRight">Routines to get the scaling parameters.  <a href="classIpopt_1_1NLPBoundsRemover.html#af3bfe72fdd3d12fcc905c2e60d2ad576">More...</a><br /></td></tr>
<tr class="separator:af3bfe72fdd3d12fcc905c2e60d2ad576"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classIpopt_1_1NLP"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classIpopt_1_1NLP')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classIpopt_1_1NLP.html">Ipopt::NLP</a></td></tr>
<tr class="memitem:a4352bb88edb772f6d4eeb5a90f019f24 inherit pub_methods_classIpopt_1_1NLP"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLP.html#a4352bb88edb772f6d4eeb5a90f019f24">NLP</a> ()</td></tr>
<tr class="memdesc:a4352bb88edb772f6d4eeb5a90f019f24 inherit pub_methods_classIpopt_1_1NLP"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="classIpopt_1_1NLP.html#a4352bb88edb772f6d4eeb5a90f019f24">More...</a><br /></td></tr>
<tr class="separator:a4352bb88edb772f6d4eeb5a90f019f24 inherit pub_methods_classIpopt_1_1NLP"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab586f13c9656ef4937f41b130e0bcfe4 inherit pub_methods_classIpopt_1_1NLP"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLP.html#ab586f13c9656ef4937f41b130e0bcfe4">~NLP</a> ()</td></tr>
<tr class="memdesc:ab586f13c9656ef4937f41b130e0bcfe4 inherit pub_methods_classIpopt_1_1NLP"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default destructor.  <a href="classIpopt_1_1NLP.html#ab586f13c9656ef4937f41b130e0bcfe4">More...</a><br /></td></tr>
<tr class="separator:ab586f13c9656ef4937f41b130e0bcfe4 inherit pub_methods_classIpopt_1_1NLP"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a210b450f617010d9dbdbd210d0f26a4e inherit pub_methods_classIpopt_1_1NLP"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLP.html#a210b450f617010d9dbdbd210d0f26a4e">DECLARE_STD_EXCEPTION</a> (USER_SCALING_NOT_IMPLEMENTED)</td></tr>
<tr class="memdesc:a210b450f617010d9dbdbd210d0f26a4e inherit pub_methods_classIpopt_1_1NLP"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exceptions.  <a href="classIpopt_1_1NLP.html#a210b450f617010d9dbdbd210d0f26a4e">More...</a><br /></td></tr>
<tr class="separator:a210b450f617010d9dbdbd210d0f26a4e inherit pub_methods_classIpopt_1_1NLP"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c86f785c4df1a6a5c07e293d8daffed inherit pub_methods_classIpopt_1_1NLP"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLP.html#a3c86f785c4df1a6a5c07e293d8daffed">DECLARE_STD_EXCEPTION</a> (INVALID_NLP)</td></tr>
<tr class="separator:a3c86f785c4df1a6a5c07e293d8daffed inherit pub_methods_classIpopt_1_1NLP"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classIpopt_1_1ReferencedObject"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classIpopt_1_1ReferencedObject')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classIpopt_1_1ReferencedObject.html">Ipopt::ReferencedObject</a></td></tr>
<tr class="memitem:a5c0f2208e3ead22bf7c5179381ed8203 inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1ReferencedObject.html#a5c0f2208e3ead22bf7c5179381ed8203">ReferencedObject</a> ()</td></tr>
<tr class="separator:a5c0f2208e3ead22bf7c5179381ed8203 inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbbf3aa5307da62ab8224ba599d4bd7a inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1ReferencedObject.html#adbbf3aa5307da62ab8224ba599d4bd7a">~ReferencedObject</a> ()</td></tr>
<tr class="separator:adbbf3aa5307da62ab8224ba599d4bd7a inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac517534e10e36c946aeefc6fe337777 inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1ReferencedObject.html#aac517534e10e36c946aeefc6fe337777">ReferenceCount</a> () const</td></tr>
<tr class="separator:aac517534e10e36c946aeefc6fe337777 inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa69ecb0f026bd741e2fa84c31d4ec332 inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1ReferencedObject.html#aa69ecb0f026bd741e2fa84c31d4ec332">AddRef</a> (const <a class="el" href="classIpopt_1_1Referencer.html">Referencer</a> *referencer) const</td></tr>
<tr class="separator:aa69ecb0f026bd741e2fa84c31d4ec332 inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6c952e7d1a63080dc8f121c008944fc inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1ReferencedObject.html#ae6c952e7d1a63080dc8f121c008944fc">ReleaseRef</a> (const <a class="el" href="classIpopt_1_1Referencer.html">Referencer</a> *referencer) const</td></tr>
<tr class="separator:ae6c952e7d1a63080dc8f121c008944fc inherit pub_methods_classIpopt_1_1ReferencedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Default Compiler Generated Methods</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>(Hidden to avoid implicit creation/calling).</p>
<p>These methods are not implemented and we do not want the compiler to implement them for us, so we declare them private and do not define them. This ensures that they will not be implicitly created/called. </p>
</div></td></tr>
<tr class="memitem:aa05fbb0bb6ebcfc93cf54664fc88958b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#aa05fbb0bb6ebcfc93cf54664fc88958b">NLPBoundsRemover</a> ()</td></tr>
<tr class="memdesc:aa05fbb0bb6ebcfc93cf54664fc88958b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Constructor.  <a href="classIpopt_1_1NLPBoundsRemover.html#aa05fbb0bb6ebcfc93cf54664fc88958b">More...</a><br /></td></tr>
<tr class="separator:aa05fbb0bb6ebcfc93cf54664fc88958b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6481590102557557b564dc2d84a203c4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a6481590102557557b564dc2d84a203c4">NLPBoundsRemover</a> (const <a class="el" href="classIpopt_1_1NLPBoundsRemover.html">NLPBoundsRemover</a> &amp;)</td></tr>
<tr class="memdesc:a6481590102557557b564dc2d84a203c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy Constructor.  <a href="classIpopt_1_1NLPBoundsRemover.html#a6481590102557557b564dc2d84a203c4">More...</a><br /></td></tr>
<tr class="separator:a6481590102557557b564dc2d84a203c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05d23f399422f97373950ee16ce8aba9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a05d23f399422f97373950ee16ce8aba9">operator=</a> (const <a class="el" href="classIpopt_1_1NLPBoundsRemover.html">NLPBoundsRemover</a> &amp;)</td></tr>
<tr class="memdesc:a05d23f399422f97373950ee16ce8aba9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Assignment Operator.  <a href="classIpopt_1_1NLPBoundsRemover.html#a05d23f399422f97373950ee16ce8aba9">More...</a><br /></td></tr>
<tr class="separator:a05d23f399422f97373950ee16ce8aba9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:aec2992658b8ebcf32f4242b6d331e339"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1NLP.html">NLP</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#aec2992658b8ebcf32f4242b6d331e339">nlp_</a></td></tr>
<tr class="memdesc:aec2992658b8ebcf32f4242b6d331e339"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to the original <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a>.  <a href="classIpopt_1_1NLPBoundsRemover.html#aec2992658b8ebcf32f4242b6d331e339">More...</a><br /></td></tr>
<tr class="separator:aec2992658b8ebcf32f4242b6d331e339"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5f3bfc2ef4ca26b60f874aca90b4601"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#ad5f3bfc2ef4ca26b60f874aca90b4601">Px_l_orig_</a></td></tr>
<tr class="memdesc:ad5f3bfc2ef4ca26b60f874aca90b4601"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to the expansion matrix for the lower x bounds.  <a href="classIpopt_1_1NLPBoundsRemover.html#ad5f3bfc2ef4ca26b60f874aca90b4601">More...</a><br /></td></tr>
<tr class="separator:ad5f3bfc2ef4ca26b60f874aca90b4601"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a884e570594236b8e26d6a21f9abc24d5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a884e570594236b8e26d6a21f9abc24d5">Px_u_orig_</a></td></tr>
<tr class="memdesc:a884e570594236b8e26d6a21f9abc24d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to the expansion matrix for the upper x bounds.  <a href="classIpopt_1_1NLPBoundsRemover.html#a884e570594236b8e26d6a21f9abc24d5">More...</a><br /></td></tr>
<tr class="separator:a884e570594236b8e26d6a21f9abc24d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af192bd61d7f00015de58cfd22896217a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#af192bd61d7f00015de58cfd22896217a">d_space_orig_</a></td></tr>
<tr class="memdesc:af192bd61d7f00015de58cfd22896217a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pointer to the original d space.  <a href="classIpopt_1_1NLPBoundsRemover.html#af192bd61d7f00015de58cfd22896217a">More...</a><br /></td></tr>
<tr class="separator:af192bd61d7f00015de58cfd22896217a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c938521a938a0ba2fa1c7101e6ee600"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIpopt_1_1NLPBoundsRemover.html#a1c938521a938a0ba2fa1c7101e6ee600">allow_twosided_inequalities_</a></td></tr>
<tr class="memdesc:a1c938521a938a0ba2fa1c7101e6ee600"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag indicating whether twosided inequality constraints are allowed.  <a href="classIpopt_1_1NLPBoundsRemover.html#a1c938521a938a0ba2fa1c7101e6ee600">More...</a><br /></td></tr>
<tr class="separator:a1c938521a938a0ba2fa1c7101e6ee600"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This is an adapter for an <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a> that converts variable bound constraints to inequality constraints. </p>
<p>This is necessary for the version of <a class="el" href="namespaceIpopt.html" title="This file contains a base class for all exceptions and a set of macros to help with exceptions.">Ipopt</a> that uses iterative linear solvers. At this point, none of the original inequality constraints is allowed to have both lower and upper bounds. The <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a> visible to <a class="el" href="namespaceIpopt.html" title="This file contains a base class for all exceptions and a set of macros to help with exceptions.">Ipopt</a> via this adapter will not have any bounds on variables, but have equivalent inequality constraints. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00023">23</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a3646ea6cbbe320867a601aa863301fd2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3646ea6cbbe320867a601aa863301fd2">&#9670;&nbsp;</a></span>NLPBoundsRemover() <span class="overload">[1/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Ipopt::NLPBoundsRemover::NLPBoundsRemover </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1NLP.html">NLP</a> &amp;&#160;</td>
          <td class="paramname"><em>nlp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>allow_twosided_inequalities</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>The constructor is given the <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a> of which the bounds are to be replaced by inequality constraints. </p>

</div>
</div>
<a id="aff975fe4bc3bc0df167efa8fb5610d18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff975fe4bc3bc0df167efa8fb5610d18">&#9670;&nbsp;</a></span>~NLPBoundsRemover()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual Ipopt::NLPBoundsRemover::~NLPBoundsRemover </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Destructor. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00037">37</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="aa05fbb0bb6ebcfc93cf54664fc88958b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa05fbb0bb6ebcfc93cf54664fc88958b">&#9670;&nbsp;</a></span>NLPBoundsRemover() <span class="overload">[2/3]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Ipopt::NLPBoundsRemover::NLPBoundsRemover </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Default Constructor. </p>

</div>
</div>
<a id="a6481590102557557b564dc2d84a203c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6481590102557557b564dc2d84a203c4">&#9670;&nbsp;</a></span>NLPBoundsRemover() <span class="overload">[3/3]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Ipopt::NLPBoundsRemover::NLPBoundsRemover </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1NLPBoundsRemover.html">NLPBoundsRemover</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copy Constructor. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a8af075022694a01745bb1287c08d3a5f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8af075022694a01745bb1287c08d3a5f">&#9670;&nbsp;</a></span>ProcessOptions()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::ProcessOptions </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1OptionsList.html">OptionsList</a> &amp;&#160;</td>
          <td class="paramname"><em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>prefix</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Overload if you want the chance to process options or parameters that may be specific to the <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a>. </p>

<p>Reimplemented from <a class="el" href="classIpopt_1_1NLP.html#a57e81a7b5f494899c4dd6279f30fa9f0">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00046">46</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="ac3e1f61783074a309e1332e06bbd14fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac3e1f61783074a309e1332e06bbd14fa">&#9670;&nbsp;</a></span>GetSpaces()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::GetSpaces </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>x_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>c_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>d_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>x_l_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>px_l_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>x_u_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>px_u_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>d_l_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>pd_l_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>d_u_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>pd_u_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>Jac_c_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>Jac_d_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1SymMatrixSpace.html">SymMatrixSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>Hess_lagrangian_space</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Method for creating the derived vector / matrix types. </p>
<p>The Hess_lagrangian_space pointer can be NULL if a quasi-Newton options is chosen. </p>

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#a448e8181391c83e07c82e7c84b54a306">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="ac39bf6ed1ae8b72e11a64ea7a16f80a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac39bf6ed1ae8b72e11a64ea7a16f80a9">&#9670;&nbsp;</a></span>GetBoundsInformation()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::GetBoundsInformation </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;&#160;</td>
          <td class="paramname"><em>Px_L</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x_L</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;&#160;</td>
          <td class="paramname"><em>Px_U</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x_U</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;&#160;</td>
          <td class="paramname"><em>Pd_L</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>d_L</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;&#160;</td>
          <td class="paramname"><em>Pd_U</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>d_U</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Method for obtaining the bounds information. </p>

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#a062722d55ce06ca35cd6c13b63587823">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="aef26dbbbe46426d8824a1ec0a15cd30c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef26dbbbe46426d8824a1ec0a15cd30c">&#9670;&nbsp;</a></span>GetStartingPoint()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::GetStartingPoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>need_x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt;&#160;</td>
          <td class="paramname"><em>y_c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>need_y_c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt;&#160;</td>
          <td class="paramname"><em>y_d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>need_y_d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt;&#160;</td>
          <td class="paramname"><em>z_L</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>need_z_L</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt;&#160;</td>
          <td class="paramname"><em>z_U</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>need_z_U</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Method for obtaining the starting point for all the iterates. </p>

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#a3db915b0a6ddedfc6d064043a6df6c2b">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="afd970daf7a1e453e7ed40e7ab1bbdb6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd970daf7a1e453e7ed40e7ab1bbdb6c">&#9670;&nbsp;</a></span>GetWarmStartIterate()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::GetWarmStartIterate </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1IteratesVector.html">IteratesVector</a> &amp;&#160;</td>
          <td class="paramname"><em>warm_start_iterate</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Method for obtaining an entire iterate as a warmstart point. </p>
<p>The incoming <a class="el" href="classIpopt_1_1IteratesVector.html" title="Specialized CompoundVector class specifically for the algorithm iterates.">IteratesVector</a> has to be filled. This has not yet been implemented for this adapter. </p>

<p>Reimplemented from <a class="el" href="classIpopt_1_1NLP.html#ad53d47a017c13c4f90459c6c1d40925d">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00107">107</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a486beaaf38829c5b076ed86e81fb4dc5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a486beaaf38829c5b076ed86e81fb4dc5">&#9670;&nbsp;</a></span>Eval_f()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::Eval_f </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &amp;&#160;</td>
          <td class="paramname"><em>f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#ad4180ae1884375f56eb45d8f1daa0cc5">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00117">117</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a3812bcd2ab07071a349ec22f7c5d6b5b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3812bcd2ab07071a349ec22f7c5d6b5b">&#9670;&nbsp;</a></span>Eval_grad_f()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::Eval_grad_f </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>g_f</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#a39373485171b0201c09d587e317d9aee">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00125">125</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a17ce021ed4e18bbf28689133149aec14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17ce021ed4e18bbf28689133149aec14">&#9670;&nbsp;</a></span>Eval_c()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::Eval_c </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>c</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#a8abc36cb9f8486431990e403d41fbd75">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00133">133</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a382ca2e4f138bb09e5058725e76be1bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a382ca2e4f138bb09e5058725e76be1bb">&#9670;&nbsp;</a></span>Eval_jac_c()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::Eval_jac_c </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;&#160;</td>
          <td class="paramname"><em>jac_c</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#ad6294eb2321b4e974b43e525cde47c8a">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00141">141</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="ab4a6bc76325ef88805a350d2a3ac758c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4a6bc76325ef88805a350d2a3ac758c">&#9670;&nbsp;</a></span>Eval_d()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::Eval_d </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>d</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#a45516306252b77258e1d1d1027ee1b02">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="ac893de19dca179a6dde68a852e10fc79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac893de19dca179a6dde68a852e10fc79">&#9670;&nbsp;</a></span>Eval_jac_d()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::Eval_jac_d </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &amp;&#160;</td>
          <td class="paramname"><em>jac_d</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#aba4891cc4903ac53a00debb3bd3c3738">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="ad128e2536a72413480685932d72a5d98"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad128e2536a72413480685932d72a5d98">&#9670;&nbsp;</a></span>Eval_h()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::Eval_h </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname"><em>obj_factor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>yc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname"><em>yd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SymMatrix.html">SymMatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>h</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implements <a class="el" href="classIpopt_1_1NLP.html#a14cd88b672c62a435fca76c8a7ed4631">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="a250b1fee212af4cff7ca4a32accd9940"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a250b1fee212af4cff7ca4a32accd9940">&#9670;&nbsp;</a></span>FinalizeSolution()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Ipopt::NLPBoundsRemover::FinalizeSolution </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#a53a5dc5f64f568252ba7bb7385e7f834">SolverReturn</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1IpoptData.html">IpoptData</a> *&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1IpoptCalculatedQuantities.html">IpoptCalculatedQuantities</a> *&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>This method is called at the very end of the optimization. </p>
<p>It provides the final iterate to the user, so that it can be stored as the solution. The status flag indicates the outcome of the optimization, where SolverReturn is defined in <a class="el" href="IpAlgTypes_8hpp.html">IpAlgTypes.hpp</a>. <br  />
 </p>

<p>Reimplemented from <a class="el" href="classIpopt_1_1NLP.html#af5ac10c639e5587a8b4cdd4423aeea17">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="ac2cca4d97a274734535fad204f64fdc9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2cca4d97a274734535fad204f64fdc9">&#9670;&nbsp;</a></span>IntermediateCallBack()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool Ipopt::NLPBoundsRemover::IntermediateCallBack </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="IpReturnCodes__inc_8h.html#a5daff61568f9909c518fb61116260387">AlgorithmMode</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a>&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1IpoptData.html">IpoptData</a> *&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1IpoptCalculatedQuantities.html">IpoptCalculatedQuantities</a> *&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>This method is called once per iteration, after the iteration summary output has been printed. </p>
<p>It provides the current information to the user to do with it anything she wants. It also allows the user to ask for a premature termination of the optimization by returning false, in which case <a class="el" href="namespaceIpopt.html" title="This file contains a base class for all exceptions and a set of macros to help with exceptions.">Ipopt</a> will terminate with a corresponding return status. The basic information provided in the argument list has the quantities values printed in the iteration summary line. If more information is required, a user can obtain it from the IpData and IpCalculatedQuantities objects. However, note that the provided quantities are all for the problem that <a class="el" href="namespaceIpopt.html" title="This file contains a base class for all exceptions and a set of macros to help with exceptions.">Ipopt</a> sees, i.e., the quantities might be scaled, fixed variables might be sorted out, etc. The status indicates things like whether the algorithm is in the restoration phase... In the restoration phase, the dual variables are probably not not changing. </p>

<p>Reimplemented from <a class="el" href="classIpopt_1_1NLP.html#a9cf00e4fc7ad13c810a6d1e238221fee">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00184">184</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="af3bfe72fdd3d12fcc905c2e60d2ad576"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3bfe72fdd3d12fcc905c2e60d2ad576">&#9670;&nbsp;</a></span>GetScalingParameters()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Ipopt::NLPBoundsRemover::GetScalingParameters </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt;&#160;</td>
          <td class="paramname"><em>x_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt;&#160;</td>
          <td class="paramname"><em>c_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt;&#160;</td>
          <td class="paramname"><em>d_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a> &amp;&#160;</td>
          <td class="paramname"><em>obj_scaling</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>x_scaling</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>c_scaling</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Vector.html">Vector</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>d_scaling</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Routines to get the scaling parameters. </p>

<p>Reimplemented from <a class="el" href="classIpopt_1_1NLP.html#a8a5d127db49494ab7001e55c5438f888">Ipopt::NLP</a>.</p>

</div>
</div>
<a id="a08966cbde0fbf585f00e3d0a5b8f7ae3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08966cbde0fbf585f00e3d0a5b8f7ae3">&#9670;&nbsp;</a></span>GetQuasiNewtonApproximationSpaces()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void Ipopt::NLPBoundsRemover::GetQuasiNewtonApproximationSpaces </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>approx_space</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt; <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>P_approx</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Method for obtaining the subspace in which the limited-memory Hessian approximation should be done. </p>
<p>This is only called if the limited-memory Hessian approximation is chosen. Since the Hessian is zero in the space of all variables that appear in the problem functions only linearly, this allows the user to provide a <a class="el" href="classIpopt_1_1VectorSpace.html" title="VectorSpace base class, corresponding to the Vector base class.">VectorSpace</a> for all nonlinear variables, and an <a class="el" href="classIpopt_1_1ExpansionMatrix.html" title="Class for expansion/projection matrices.">ExpansionMatrix</a> to lift from this <a class="el" href="classIpopt_1_1VectorSpace.html" title="VectorSpace base class, corresponding to the Vector base class.">VectorSpace</a> to the <a class="el" href="classIpopt_1_1VectorSpace.html" title="VectorSpace base class, corresponding to the Vector base class.">VectorSpace</a> of the primal variables x. If the returned values are NULL, it is assumed that the Hessian is to be approximated in the space of all x variables. The default instantiation of this method returns NULL, and a user only has to overwrite this method if the approximation is to be done only in a subspace. </p>

<p>Reimplemented from <a class="el" href="classIpopt_1_1NLP.html#a9bdad901e4cb4aa8fbe71c35e61948b0">Ipopt::NLP</a>.</p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00218">218</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a7ba0fa7d02a76ad5451b705aacfe6446"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ba0fa7d02a76ad5451b705aacfe6446">&#9670;&nbsp;</a></span>nlp()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt;<a class="el" href="classIpopt_1_1NLP.html">NLP</a>&gt; Ipopt::NLPBoundsRemover::nlp </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Accessor method to the original <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a>. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00227">227</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a05d23f399422f97373950ee16ce8aba9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05d23f399422f97373950ee16ce8aba9">&#9670;&nbsp;</a></span>operator=()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Ipopt::NLPBoundsRemover::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classIpopt_1_1NLPBoundsRemover.html">NLPBoundsRemover</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Default Assignment Operator. </p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="aec2992658b8ebcf32f4242b6d331e339"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec2992658b8ebcf32f4242b6d331e339">&#9670;&nbsp;</a></span>nlp_</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt;<a class="el" href="classIpopt_1_1NLP.html">NLP</a>&gt; Ipopt::NLPBoundsRemover::nlp_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Pointer to the original <a class="el" href="classIpopt_1_1NLP.html" title="Traditional NLP.">NLP</a>. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00257">257</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="ad5f3bfc2ef4ca26b60f874aca90b4601"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5f3bfc2ef4ca26b60f874aca90b4601">&#9670;&nbsp;</a></span>Px_l_orig_</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt;const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a>&gt; Ipopt::NLPBoundsRemover::Px_l_orig_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Pointer to the expansion matrix for the lower x bounds. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00260">260</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a884e570594236b8e26d6a21f9abc24d5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a884e570594236b8e26d6a21f9abc24d5">&#9670;&nbsp;</a></span>Px_u_orig_</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt;const <a class="el" href="classIpopt_1_1Matrix.html">Matrix</a>&gt; Ipopt::NLPBoundsRemover::Px_u_orig_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Pointer to the expansion matrix for the upper x bounds. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00263">263</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="af192bd61d7f00015de58cfd22896217a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af192bd61d7f00015de58cfd22896217a">&#9670;&nbsp;</a></span>d_space_orig_</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIpopt_1_1SmartPtr.html">SmartPtr</a>&lt;const <a class="el" href="classIpopt_1_1VectorSpace.html">VectorSpace</a>&gt; Ipopt::NLPBoundsRemover::d_space_orig_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Pointer to the original d space. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00266">266</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<a id="a1c938521a938a0ba2fa1c7101e6ee600"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1c938521a938a0ba2fa1c7101e6ee600">&#9670;&nbsp;</a></span>allow_twosided_inequalities_</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool Ipopt::NLPBoundsRemover::allow_twosided_inequalities_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Flag indicating whether twosided inequality constraints are allowed. </p>

<p class="definition">Definition at line <a class="el" href="IpNLPBoundsRemover_8hpp_source.html#l00269">269</a> of file <a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/Algorithm/<a class="el" href="IpNLPBoundsRemover_8hpp_source.html">IpNLPBoundsRemover.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
</body>
</html>
